Skip to content

docs: package templates design v2 (multi-level resolution)#111

Merged
Sunrisepeak merged 1 commit into
mainfrom
docs/package-templates-v2
Jun 4, 2026
Merged

docs: package templates design v2 (multi-level resolution)#111
Sunrisepeak merged 1 commit into
mainfrom
docs/package-templates-v2

Conversation

@Sunrisepeak
Copy link
Copy Markdown
Member

Design-only. Multi-level --template grammar (bare name → builtin frozen registry → package default template; pkg:tmpl / pkg@ver / pkg@ver:tmpl), default-template declaration, [template.inject] features tie-in with {{self.version}} (structural fix for the builtin-gui version rot, 0.0.2 vs ecosystem 0.0.5), pure-data trust boundary, T1–T8 plan. Implementation comes as a follow-up.

Incorporates the generality + convenience requirements:
- 4-level SPEC grammar (NAME | pkg:tmpl | pkg@ver | pkg@ver:tmpl); bare-name
  resolves builtin registry first (frozen to bin|lib), then the package's
  DEFAULT template (template.toml default = true, exactly 0/1).
- gui builtin becomes a transitional deprecation alias (the imgui hardcode in
  cmd_new is the anti-example: version already rotted 0.0.2 vs 0.0.5).
- [template.inject] self = { features = [...] } ties templates to the
  features mechanism (docking template injects docking-full) with
  {{self.version}} eliminating version drift structurally.
- pure-data trust boundary (render+copy, no hooks/scripts); placeholder
  vocabulary deliberately minimal; T1-T8 implementation plan + acceptance.
@Sunrisepeak Sunrisepeak merged commit 9efa721 into main Jun 4, 2026
3 checks passed
@Sunrisepeak Sunrisepeak deleted the docs/package-templates-v2 branch June 4, 2026 01:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants